import pandas as pd

def get_sub_df_by_time(df,timerange):# 按照时间范围进行选取
    print('按时间范围 ',timerange[0],' 到 ',timerange[1],' 取轨迹')
    sub_df=pd.DataFrame()
    sub_df=df[(df['position_t']>=timerange[0]) & (df['position_t']<=timerange[1])]
    sub_df=sub_df.reset_index(drop=True)
    return sub_df


def get_sub_df_by_position(df,posrange):# 按照空间范围进行选取
    print('按空间范围 ',posrange[0],' 到 ',posrange[1],' 取轨迹')
    sub_df=pd.DataFrame()
    sub_df=df[(df['lon']>=posrange[0][0]) & (df['lat']>=posrange[0][1]) & (df['lon']<=posrange[1][0]) & (df['lat']<=posrange[1][1])]
    #给定正方形的对角线两点 选择位于这个矩形内的区域
    sub_df=sub_df.reset_index(drop=True)
    return sub_df

def look_into_df(df):#查看数据信息，包括覆盖时间、范围、出租车数量
    print('共 ',len(df),' 行数据')
    print('其中有不同出租车共 ',len(df['id'].unique()),' 辆')
    print('时间覆盖范围从 ',min(df['position_t']),' 到 ',max(df['position_t']))
    print('空间覆盖范围从 ',min(df['lon']),',',min(df['lat']),' 到 ',max(df['lon']),',',max(df['lat']))